import { ATTRIBUTE_TYPE } from '../../model/attributes/type';
import type { TeammateConfig } from '../../model/teammate';

/**
 * 队友类型枚举
 */
export const TEAMMATE_TYPE = {
  /** 宠物 */
  PET: 'PET',
} as const;

/** 队友类型 */
export type TeammateType = keyof typeof TEAMMATE_TYPE;

export const TEAMMATE_ID = {
  /** 小强 */
  XIAO_QIANG: 'XIAO_QIANG',
} as const;

export const TEAMMATE_DATA: TeammateConfig[] = [
  {
    id: TEAMMATE_ID.XIAO_QIANG,
    name: '小强',
    description: '有点难杀',
    type: TEAMMATE_TYPE.PET,
    attributesConfig: {
      mode: 'level',
      levelBasedConfig: {
        baseAttributes: {
          [ATTRIBUTE_TYPE.HEALTH]: 100,
          [ATTRIBUTE_TYPE.ATTACK]: 15,
          [ATTRIBUTE_TYPE.DEFENSE]: 8,
          [ATTRIBUTE_TYPE.SPEED]: 1.0,
        },
        growthFactors: {
          [ATTRIBUTE_TYPE.HEALTH]: 8,
          [ATTRIBUTE_TYPE.ATTACK]: 1.2,
          [ATTRIBUTE_TYPE.DEFENSE]: 0.6,
          [ATTRIBUTE_TYPE.SPEED]: 0.1,
        },
        initialLevel: 1,
      },
    },
  },
];
